
#include <iostream>
#include <string>
#include <unistd.h>

using namespace std;

class Father {
private:
    int money;
protected:
    int room_key;
public:
    int address;
    void it_skill() {
        cout << "father's it skill" << endl;
    }

    int getMoney(void) {
        return money;
    }

    int setMoney(int money) {
        this->money = money;
    }
};

class Son_pub : public Father {
private:
    int toy;
//    using Father::room_key;
public:
    using Father::room_key;
    void play_game(void) {
        cout << "Son_pub play_game" << endl;

        room_key = 1;
    }
};

class Son_pro : protected Father {
private:
    int toy;
public:
    void play_game(void) {
        cout << "Son_pro play_game" << endl;

        room_key = 1;
    }
};

class Son_pri : private Father {
private:
    int toy;
public:
    void play_game(void) {
        cout << "Son_pri play_game" << endl;
    }
};
